// #include <stdio.h>
// #include <string.h>
// void reverse(char ch[],int i,int j)//从i到j反转字符串
// {
//     while(i<j)
//     {
//         char temp=ch[i];
//         ch[i]=ch[j];
//         ch[j]=temp;
//         i++;
//         j--;
//     }
// }
// void zx(char ch[],int k)
// {
//     int len=strlen(ch);
//     k=k%len;
//     reverse(ch,0,len-1);//反转整个字符串
//     reverse(ch,0,k-1);//反转前k个字符
//     reverse(ch,k,len-1);//反转剩余字符
// }
// int main()
// {
//     char ch[100];
//     scanf("%[^\n]",ch);
//     int k;
//     scanf("%d",&k);
//     zx(ch,k);
//     printf("%s",ch);
//     return 0;
// }



// #include <stdio.h>
// int str(char ch[],char* p)
// {
//     int count=0;
//     while(*p)
//     {
//         count++;
//         p++;
//     }
//     return count;
// }
// int main()
// {
//     char ch[100];
//     scanf("%[^\n]",ch);
//     char* p=ch;
//     int c=str(ch,p);
//     printf("%d",c);
//     return 0;
// }


#include <stdio.h>
#define N 10
void jqoh(int arr[],int n)
{
    int arr2[n];
    int j=0;
    for(int i=0;i<n;i++)
    {
        if(arr[i]%2==1)
        {
            arr2[j++]=arr[i];
        }
    }
    for(int i=0;i<n;i++)
    {
        if(arr[i]%2==0)
        {
            arr2[j++]=arr[i];
        }
    }
    for(int i=0;i<n;i++)
    {
        arr[i]=arr2[i];
    }
}
int main()
{
    int arr[N];
    int i;
    for(i=0;i<N;i++)
    {
        scanf("%d",&arr[i]);
    }
    jqoh(arr,N);
    for(i=0;i<N;i++)
    {
        printf("%d ",arr[i]);
    }
    return 0;
}